"""
@file:   app
@author: FrankYi
@date:   2020/08/12
@desc:
"""
import os
from flask import Flask
from flask_cors import CORS
# from libs.log import create_logger
def create_app(config=None):
    # 创建app
    app = Flask(__name__)
    # 第一个*， 所有api可以访问
    # 第二个*，
    CORS(app, resources={'*': {'origins': '*'}})
    # 加载配置: config.settings和config.secure是模块路径
    app.config.from_object('config.setting')
    app.config.from_object('config.secure')

    # 也可以根据系统环境变量，加载不同的配置文件
    if 'FLASK_CONF' in os.environ:
        app.config.from_envvar('FLASK_CONF')
    # load app sepcified configuration
    if config is not None:
        if isinstance(config, dict):
            app.config.update(config)
        elif config.endswith('.py'):
            app.config.from_pyfile(config)
    # create_logger()
    import router, models, mail , serializer
    router.init_app(app)
    models.init_app(app)
    serializer.init_app(app)
    mail.init_app(app)
    # 返回核心对象
    return app